package com.qzd.singleton.lazy;

/**
 * 静态方法内部类单例，
 * 一个类被加载，当且仅当其某个静态成员（静态域、构造器、静态方法等）被调用时发生。对象较大，浪费资源
 * 会被反射破坏
 * @author
 */
public class LazyStaticInnerSinglton {

    private LazyStaticInnerSinglton() {
    }

    private static LazyStaticInnerSinglton getInstance() {
        return LazyHolder.INSTANCE;
    }

    /**
     * 类中静态会在调用时会分配内存进行分配
     */
    private static class LazyHolder {
        private static final LazyStaticInnerSinglton INSTANCE = new LazyStaticInnerSinglton();
    }
}
